home *** CD-ROM | disk | FTP | other *** search
/ Dictionaries & Language / Dictionaries and Language (Chestnut CD-ROM) (1993).iso / italian / it / teacher.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1985-08-17  |  19.5 KB  |  345 lines

  1. 10  'Version 1.1
  2. 20  KEY OFF:CLS:SCREEN 0,0,0:WIDTH 80:LOCATE 1,1,0:FOR I=1 TO 10:KEY I,"":NEXT:DEF SEG:POKE 106,0
  3. 22  ON ERROR GOTO 25:PLAY "":ON ERROR GOTO 0:GOTO 30
  4. 25  LOCATE 10,9:PRINT">>>>>> You must load BASICA in order to use ITALIAN TEACHER <<<<<<":LOCATE 23:END
  5. 30  LOCATE 3,9:PRINT STRING$(64,223):FOR I=3 TO 21:LOCATE I,8:PRINT CHR$(219):LOCATE I,73:PRINT CHR$(219):NEXT:LOCATE 21,9:PRINT STRING$(64,220)
  6. 40  LOCATE 7,30:PRINT"Micro Tutor Products":LOCATE 9,36:PRINT"presents":LOCATE 11,30:PRINT"*********************":LOCATE 12,30:PRINT"* ";:COLOR 0,7:PRINT" ITALIAN TEACHER ";:COLOR 7,0:PRINT" *":LOCATE 13,30:PRINT"*********************"
  7. 50  LOCATE 15,34:PRINT"(c) 1982 by":LOCATE 17,27:PRINT" Cindy & Andrew Bartorillo":DEFINT A-Z:S=120:DIM Z1(S),Z2(S),Z1$(S),Z2$(100),R1$(100),R2$(100),R3$(100),R4$(100),E(6,5)
  8. 60  U1$="##":U2$="\                  \":U7$="\                                      \":L$="Line printer is not available!":S1$="Italian to English":S2$="English to Italian"
  9. 70  RANDOMIZE(VAL(RIGHT$(TIME$,2))):S1=0:T9=0:COLOR 0,7:LOCATE 24,20:PRINT" Hit any key when ready for program menu. ";:COLOR 7,0:GOSUB 3110
  10. 80  IF INKEY$="" THEN 80
  11. 90  CLS:T=0:Y=0:TM=15:TM$="00:00:10":COLOR 0,7:LOCATE 1,26:PRINT" ITALIAN TEACHER--Version 1.1 ":COLOR 7,0:PRINT STRING$(79,"-"):LOCATE 4,15:PRINT"These options are available:":LOCATE 6,25:PRINT"<A> Noun Vocabulary Drill"
  12. 100  PRINT TAB(25)"<B> Verb Vocabulary Drill":PRINT TAB(25)"<C> Miscellaneous Word Vocabulary Drill":PRINT TAB(25)"<D> Random Selection Vocabulary Drill":PRINT TAB(25)"<E> Phrase Translation Drill":PRINT TAB(25)"<F> Verb Conjugation Drill"
  13. 110  PRINT TAB(25)"<G> Retest Missed Vocabulary/Phrases":PRINT TAB(25)"<H> Diagnostic Results":PRINT TAB(25)"<I> Print Noun Vocabulary Test":PRINT TAB(25)"<J> Print Verb Vocabulary Test":PRINT TAB(25)"<K> Print Miscellaneous Word Vocabulary Test"
  14. 120  PRINT TAB(25)"<L> Print Random Selection Vocabulary Test":PRINT TAB(25)"<M> Print Phrase Test":PRINT TAB(25)"<N> Print Verb Conjugation Test":LOCATE 21,1:PRINT STRING$(79,"-")
  15. 130  LOCATE 23,1:PRINT SPC(70):COLOR 0,7:LOCATE 23,34:PRINT" ENTER CHOICE ":COLOR 7,0:GOSUB 3110
  16. 140  Z$=INKEY$:IF Z$="" THEN 140 ELSE IF ASC(Z$)>90 THEN Z$=CHR$(ASC(Z$)-32)
  17. 150  S=ASC(Z$)-64:IF S<1 OR S>14 THEN 140
  18. 160  IF S>8 THEN S=S-8:S$="Y":ON ERROR GOTO 3120:LPRINT:ON ERROR GOTO 0:T=1
  19. 170  IF S<7 THEN S1=S
  20. 180  IF S1=6 AND S=7 THEN 140
  21. 190  IF S=7 THEN GOSUB 1550:IF P5=0 AND P6=0 THEN 1600 ELSE 380
  22. 200  IF S<>8 THEN T9=0
  23. 210  CLS:B=0:D=0:ON S GOTO 220,220,220,220,220,220,220,1980
  24. 220  P5=0:P6=0:P8=0:P9=0:P=0:P1=0:M=0:T1=0:T2=0:IF S=6 THEN FOR I=1 TO 6:FOR H=1 TO 5:E(I,H)=0:NEXT H,I
  25. 230  ERASE Z1$,Z2$,R1$,R2$,R3$,R4$:DIM Z1$(120),Z2$(100),R1$(100),R2$(100),R3$(100),R4$(100)
  26. 240  IF S=4 THEN GOSUB 1620
  27. 250  IF S=6 THEN GOSUB 2540:TM=25:TM$="00:00:20"
  28. 260  IF S=1 THEN GOSUB 1660
  29. 270  IF S=2 THEN X$="*":GOSUB 1710
  30. 280  IF S=3 THEN X$="/":GOSUB 1710
  31. 290  IF S=5 THEN GOSUB 1760
  32. 300  CLS:IF S<>6 THEN FOR I=1 TO 120:Z1(I)=0:Z2(I)=0:NEXT
  33. 310  P8=P:P9=P:IF S=6 THEN P8=P/5:P9=P8
  34. 320  IF T=1 OR T1>0 THEN 370
  35. 330  CLS:LOCATE 12,15:PRINT"Do you want a multiple choice type quiz (Y/N/X=Escape)?":GOSUB 3110
  36. 340  S$=INKEY$:IF S$="" THEN 340 ELSE IF ASC(S$)>90 THEN S$=CHR$(ASC(S$)-32)
  37. 350  IF S$="X" THEN 90
  38. 360  IF S$<>"Y" AND S$<>"N" THEN 340
  39. 370  IF S=6 THEN 480
  40. 380  IF S=6 THEN 90 ELSE CLS:LOCATE 12,6:PRINT"Do you want ";S2$;" or ";S1$;" (E/I/X=Escape)?":GOSUB 3110
  41. 390  X$=INKEY$:IF X$="" THEN 390 ELSE IF ASC(X$)>90 THEN X$=CHR$(ASC(X$)-32)
  42. 400  IF S=5 THEN T9=1
  43. 410  IF X$="E" THEN D=2:IF P9=0 AND S<>7 THEN LOCATE 20,15:PRINT"You have no ";S2$;" selections available.":FOR B=1 TO 4999:NEXT:GOTO 380
  44. 420  IF X$="E" THEN D=2:IF P3=0 AND S=7 THEN LOCATE 20,11:PRINT"You have no ";S2$;" selections to be retested on.":FOR B=1 TO 4999:NEXT:GOTO 380 ELSE 480
  45. 430  IF X$="I" THEN D=1:IF P8=0 AND S<>7 THEN LOCATE 20,15:PRINT"You have no ";S1$;" selections available.":FOR B=1 TO 4999:NEXT:GOTO 380
  46. 440  IF X$="I" THEN D=1:IF P4=0 AND S=7 THEN LOCATE 20,11:PRINT"You have no ";S1$;" selections to be retested on.":FOR B=1 TO 4999:NEXT:GOTO 380 ELSE 480
  47. 450  IF X$="X" AND S<>7 THEN S1=S
  48. 460  IF X$="X" THEN 90
  49. 470  GOTO 390
  50. 480  CLS
  51. 490  IF S=1 THEN PRINT STRING$(24,175);" ";:COLOR 0,7:PRINT" NOUN VOCABULARY DRILL OPTION ";:COLOR 7,0:PRINT" ";STRING$(24,174)
  52. 500  IF S=2 THEN PRINT STRING$(24,175);" ";:COLOR 0,7:PRINT" VERB VOCABULARY DRILL OPTION ";:COLOR 7,0:PRINT" ";STRING$(24,174)
  53. 510  IF S=3 THEN PRINT STRING$(17,175);" ";:COLOR 0,7:PRINT" MISCELLANEOUS WORD VOCABULARY DRILL OPTION ";:COLOR 7,0:PRINT" ";STRING$(17,174)
  54. 520  IF S=4 THEN PRINT STRING$(16,175);" ";:COLOR 0,7:PRINT" RANDOM SELECTION WORD VOCABULARY DRILL OPTION ";:COLOR 7,0:PRINT" ";STRING$(15,174)
  55. 530  IF S=5 THEN PRINT STRING$(23,175);" ";:COLOR 0,7:PRINT" PHRASE TRANSLATION DRILL OPTION ";:COLOR 7,0:PRINT" ";STRING$(22,174)
  56. 540  IF S=6 THEN PRINT STRING$(24,175);" ";:COLOR 0,7:PRINT" VERB CONJUGATION DRILL OPTION ";:COLOR 7,0:PRINT" ";STRING$(23,174)
  57. 550  IF S=7 THEN PRINT STRING$(32,175);" ";:COLOR 0,7:PRINT" RETEST OPTION ";:COLOR 7,0:PRINT" ";STRING$(31,174)
  58. 560  LOCATE 3,1:PRINT STRING$(80,"-"):LOCATE 17,1:PRINT STRING$(80,"-")
  59. 570  IF T=1 THEN 600
  60. 580  IF S<>7 THEN LOCATE 16,4:PRINT"Total quizzed ="T1:LOCATE 16,25:PRINT"Total correct ="T2:LOCATE 16,46:PRINT"Correct answer percentage = ";:IF P1=100 THEN PRINT "100%" ELSE PRINT USING U1$;P1;:PRINT"%"
  61. 590  '
  62. 600  IF S=6 THEN 2600
  63. 610  FOR I=1 TO 4:A$(I)="":NEXT
  64. 620  X=INT(RND(1)*P)+1:K=INT(RND(1)*4)+1:IF S=7 AND D=1 THEN X1=INT(RND(1)*P6)+1 ELSE IF S=7 AND D=2 THEN X1=INT(RND(1)*P5)+1
  65. 630  LOCATE 2,2:PRINT"*":FOR DE=1 TO 199:NEXT:LOCATE 2,2:PRINT" "
  66. 640  BR$=INKEY$:IF BR$="" THEN 650 ELSE IF BR$="x" OR BR$="X" THEN 380
  67. 650  IF S=7 THEN 1800
  68. 660  IF (D=2 AND Z1(X)<>0) OR (D=1 AND Z2(X)<>0) THEN 620
  69. 670  IF D=1 THEN A$(K)=Z1$(X) ELSE A$(K)=MID$(Z2$(X),2)
  70. 680  IF S$="N" THEN 740
  71. 690  IF K=1 THEN I=2:GOSUB 1220:I=3:GOSUB 1220:I=4:GOSUB 1220
  72. 700  IF K=2 THEN I=1:GOSUB 1220:I=3:GOSUB 1220:I=4:GOSUB 1220
  73. 710  IF K=3 THEN I=1:GOSUB 1220:I=2:GOSUB 1220:I=4:GOSUB 1220
  74. 720  IF K=4 THEN I=1:GOSUB 1220:I=2:GOSUB 1220:I=3:GOSUB 1220
  75. 730  IF A$(1)=A$(2) OR A$(1)=A$(3) OR A$(1)=A$(4) OR A$(2)=A$(3) OR A$(2)=A$(4) OR A$(3)=A$(4) THEN 620
  76. 740  GOSUB 1480
  77. 750  IF D=2 AND S=5 THEN LOCATE 5,20:PRINT USING U7$;Z1$(X) ELSE IF D=1 AND S=5 THEN LOCATE 5,20:PRINT USING U7$;MID$(Z2$(X),2)
  78. 760  IF D=2 AND S=7 AND T9=1 THEN LOCATE 5,20:PRINT USING U7$;R1$(X1) ELSE IF D=1 AND S=7 AND T9=1 THEN LOCATE 5,20:PRINT USING U7$;MID$(R4$(X1),2)
  79. 770  IF S=4 AND D=2 THEN GOSUB 1460 ELSE IF S=7 AND D=2 AND T9<>1 THEN GOSUB 1830
  80. 780  IF S$="N" THEN 840 ELSE FOR N=1 TO 4:LOCATE 5+N*2,29:PRINT"<";MID$(STR$(N),2);"> ";
  81. 790  IF (T9<>1 OR (S<>5 AND S<>7)) AND (LEFT$(A$(N),2)="i " OR LEFT$(A$(N),2)="l'") THEN PRINT USING U2$;MID$(A$(N),3):GOTO 800
  82. 792  IF (T9<>1 OR (S<>5 AND S<>7)) AND (LEFT$(A$(N),3)="la " OR LEFT$(A$(N),3)="le ") THEN PRINT USING U2$;MID$(A$(N),4):GOTO 800
  83. 794  IF (T9<>1 OR (S<>5 AND S<>7)) AND (LEFT$(A$(N),3)="lo " OR LEFT$(A$(N),3)="il ") THEN PRINT USING U2$;MID$(A$(N),4):GOTO 800
  84. 796  IF (S<>5 AND S<>7) OR T9<>1 OR S=6 THEN PRINT USING U2$;A$(N)
  85. 800  IF S=5 OR T9=1 THEN PRINT USING U7$;A$(N)
  86. 810  NEXT
  87. 820  IF T=1 THEN 1240
  88. 830  FOR N=1 TO 4:C$(N)=A$(N):NEXT
  89. 840  GOSUB 3110:GOSUB 3140
  90. 842  IF (S$="N" AND D=2) OR (S$="N" AND S=6) THEN LOCATE 25,1:PRINT"F1="CHR$(133)"  F2="CHR$(138)"  F3="CHR$(130)"  F4="CHR$(141)"  F5="CHR$(161);
  91. 844  IF (S$="N" AND D=2) OR (S$="N" AND S=6) THEN PRINT"  F6="CHR$(149)"  F7="CHR$(162)"  F8="CHR$(151)"  F9="CHR$(163);
  92. 850  IF S$="N" THEN GOSUB 2980:C$(C)=ANSWER$:IF C$(C)="x" OR C$(C)="X" THEN 380 ELSE 950
  93. 860  C=0:LOCATE 19,25:PRINT"Enter your choice (1-4/X=Escape)";
  94. 870  TIME$="00:00:00"
  95. 880  C$=INKEY$:IF TM-VAL(RIGHT$(TIME$,2))<0 THEN TIME$=TM$
  96. 885  DEF SEG=&H40:POKE &H17,160
  97. 890  LOCATE 18,64:PRINT USING U1$;TM-VAL(RIGHT$(TIME$,2));:PRINT" seconds left"
  98. 900  IF RIGHT$(TIME$,2)=MID$(STR$(TM),2) THEN LOCATE 18,64:COLOR 23,0:PRINT"TIME EXPIRED   ":COLOR 7,0:GOTO 950
  99. 910  IF C$<>"" THEN 930
  100. 920  GOTO 880
  101. 930  IF C$="x" OR C$="X" THEN 380
  102. 940  IF C$<"1" OR C$>"4" THEN 880 ELSE LOCATE 19,58:PRINT C$:C=VAL(C$)
  103. 950  IF S=7 THEN 1850
  104. 960  T1=T1+1:COLOR 0,7:IF C$(C)=A$(K) THEN LOCATE 22,33:PRINT" CORRECT ANSWER ":T2=T2+1 ELSE LOCATE 22,INT((80-LEN(A$(K))-38)/2):PRINT" INCORRECT ANSWER-CORRECT ANSWER IS: ";A$(K);" "
  105. 970  COLOR 7,0:P1=(T2/T1)*100
  106. 980  LOCATE 16,19:PRINT T1:LOCATE 16,40:PRINT T2:IF P1=100 THEN LOCATE 16,74:PRINT"100":GOTO 1000
  107. 990  LOCATE 16,74:PRINT USING U1$;P1;:PRINT "% "
  108. 1000  IF D=2 AND C$(C)<>A$(K) THEN Z1(X)=2
  109. 1010  IF D=2 AND C$(C)=A$(K) THEN Z1(X)=1
  110. 1020  IF D=1 AND C$(C)<>A$(K) THEN Z2(X)=2
  111. 1030  IF D=1 AND C$(C)=A$(K) THEN Z2(X)=1
  112. 1040  IF S=6 AND C$(C)<>A$(K) THEN E(Z1(M),X1)=E(Z1(M),X1)+1
  113. 1050  IF S<>7 AND D=2 THEN P9=P9-1 ELSE IF S<>7 THEN P8=P8-1
  114. 1060  GOSUB 3140
  115. 1070  IF S=6 THEN 1140 ELSE IF P8=0 AND P9=0 THEN 2750
  116. 1080  IF D=1 AND P8=0 THEN 1120
  117. 1090  IF D=2 AND P9=0 THEN 1100 ELSE 1140
  118. 1100  LOCATE 24,10:PRINT"You have been quizzed with all ";S2$;" selections.";:LOCATE 25,17:PRINT"Hit any key to select ";S1$;" option.";
  119. 1110  IF INKEY$="" THEN 1110 ELSE D=1:LOCATE 24,9:PRINT SPC(63);:LOCATE 25,17:PRINT SPC(48);:GOTO 1170
  120. 1120  LOCATE 24,10:PRINT"You have been quizzed with all ";S1$;" selections.";:LOCATE 25,17:PRINT"Hit any key to select ";S2$;" option.";
  121. 1130  IF INKEY$="" THEN 1130 ELSE D=2:LOCATE 24,9:PRINT SPC(63);:LOCATE 25,17:PRINT SPC(48);:GOTO 1170
  122. 1140  IF S=6 THEN Z1(M)=0:IF P8=0 THEN 2750
  123. 1150  LOCATE 25,20:PRINT"Hit any key for another selection (X=Escape)";:GOSUB 3110
  124. 1160  Z$=INKEY$:IF Z$="" THEN 1160 ELSE IF Z$="x" OR Z$="X" THEN 380
  125. 1170  LOCATE 18,64:PRINT SPC(16):LOCATE 19,1:PRINT SPC(79):LOCATE 22,1:PRINT SPC(79):LOCATE 25,20:PRINT SPC(45)
  126. 1180  IF S=6 THEN LOCATE 5,15:PRINT STRING$(20,178):LOCATE 5,40:PRINT STRING$(4,178):LOCATE 5,60:PRINT STRING$(11,178):IF S$="Y" THEN FOR II=1 TO 4:LOCATE 5+II*2,33:PRINT STRING$(20,178):NEXT
  127. 1190  IF S=5 OR (S=7 AND T9=1) THEN LOCATE 5,20:PRINT STRING$(35,178):IF S$="Y" THEN FOR II=1 TO 4:LOCATE 5+II*2,33:PRINT STRING$(35,178):NEXT
  128. 1200  IF S<5 OR S1<5 THEN LOCATE 5,20:PRINT STRING$(20,178):IF S$="Y" THEN FOR II=1 TO 4:LOCATE 5+II*2,33:PRINT STRING$(20,178):NEXT
  129. 1210  IF S=6 THEN 2600 ELSE 610
  130. 1220  N=INT(RND(1)*P)+1:IF D=2 THEN A$(I)=MID$(Z2$(N),2) ELSE A$(I)=Z1$(N)
  131. 1230  RETURN
  132. 1240  LOCATE 20,30:PRINT"Hit <P> to print selection,":PRINT TAB(34)"<N> for new selection, or":PRINT TAB(34)"<X> to exit.":GOSUB 3110
  133. 1250  ZZ$=INKEY$:IF ZZ$="" THEN 1250
  134. 1260  IF ZZ$="p" OR ZZ$="P" THEN GOSUB 1310:GOTO 1300
  135. 1270  IF ZZ$="n" OR ZZ$="N" THEN 1300
  136. 1280  IF ZZ$="x" OR ZZ$="X" THEN 380
  137. 1290  GOTO 1250
  138. 1300  LOCATE 20,30:PRINT SPC(27):LOCATE 21,34:PRINT SPC(25):LOCATE 22,34:PRINT SPC(12):GOTO 1170
  139. 1310  Y=Y+1:IF Y>1 THEN 1380
  140. 1320  IF S=1 THEN LPRINT STRING$(26,"*");" Noun Vocabulary Drill Test ";STRING$(26,"*")
  141. 1330  IF S=2 THEN LPRINT STRING$(26,"*");" Verb Vocabulary Drill Test ";STRING$(26,"*")
  142. 1340  IF S=3 THEN LPRINT STRING$(19,"*");" Miscellaneous Word Vocabulary Drill Test ";STRING$(19,"*")
  143. 1350  IF S=4 THEN LPRINT STRING$(17,"*");" Random Selection Word Vocabulary Drill Test ";STRING$(18,"*")
  144. 1360  IF S=5 THEN LPRINT STRING$(25,"*");" Phrase Translation Drill Test ";STRING$(24,"*")
  145. 1370  IF S=6 THEN LPRINT STRING$(26,"*");" Verb Conjugation Drill Test ";STRING$(25,"*")
  146. 1380  LPRINT:IF S=5 THEN 1430 ELSE IF S=6 THEN 1450
  147. 1390  LPRINT STR$(Y);". ";:IF D=2 THEN ZZ$=Z1$(X):GOTO 1410
  148. 1400  IF LEFT$(Z2$(X),4)="-il " OR LEFT$(Z2$(X),4)="-lo " THEN ZZ$=MID$(Z2$(X),5):GOTO 1410
  149. 1405  IF LEFT$(Z2$(X),4)="-la " OR LEFT$(Z2$(X),4)="-le " THEN ZZ$=MID$(Z2$(X),5):GOTO 1410
  150. 1407  IF LEFT$(Z2$(X),3)="-l'" OR LEFT$(Z2$(X),3)="-i " THEN ZZ$=MID$(Z2$(X),4) ELSE ZZ$=MID$(Z2$(X),2)
  151. 1410  GOSUB 2920:LPRINT ZZ$:LPRINT TAB(4);:FOR B=1 TO 4:IF LEFT$(A$(B),3)="il " OR LEFT$(A$(B),4)="lo " THEN ZZ$=MID$(A$(B),4):GOTO 1420
  152. 1414  IF LEFT$(A$(B),3)="la " OR LEFT$(A$(B),3)="le " THEN ZZ$=MID$(A$(B),4):GOTO 1420
  153. 1416  IF LEFT$(A$(B),2)="l'" OR LEFT$(A$(B),2)="i " THEN ZZ$=MID$(A$(B),3) ELSE ZZ$=A$(B)
  154. 1420  GOSUB 2920:LPRINT "  ";CHR$(96+B);". ";ZZ$;:NEXT:LPRINT:LPRINT:RETURN
  155. 1430  LPRINT STR$(Y);". ";:IF D=2 THEN ZZ$=Z1$(X) ELSE ZZ$=MID$(Z2$(X),2)
  156. 1440  GOSUB 2920:LPRINT ZZ$:FOR B=1 TO 4:LPRINT TAB(10) CHR$(96+B);". ";:ZZ$=A$(B):GOSUB 2920:LPRINT ZZ$:NEXT:LPRINT:RETURN
  157. 1450  LPRINT STR$(Y);". ";Z1$(P);TAB(25)BR$;TAB(40)X$:LPRINT TAB(4);:FOR B=1 TO 4:LPRINT "  ";CHR$(96+B);". ";A$(B);:NEXT:LPRINT:LPRINT:RETURN
  158. 1460  LOCATE 5,70:COLOR 0,7:IF LEFT$(Z2$(X),1)="-" THEN PRINT" NOUN " ELSE IF LEFT$(Z2$(X),1)="*" THEN PRINT" VERB " ELSE PRINT" MISC "
  159. 1470  COLOR 7,0:RETURN
  160. 1480  IF D=2 AND S<>5 AND S<>7 THEN LOCATE 5,20:PRINT USING U2$;Z1$(X)
  161. 1490  IF D=1 AND S<>5 AND S<>7 AND (MID$(Z2$(X),2,3)="il " OR MID$(Z2$(X),2,3)="lo ") THEN LOCATE 5,20:PRINT USING U2$;MID$(Z2$(X),5):GOTO 1510
  162. 1494  IF D=1 AND S<>5 AND S<>7 AND (MID$(Z2$(X),2,3)="la " OR MID$(Z2$(X),2,3)="le ") THEN LOCATE 5,20:PRINT USING U2$;MID$(Z2$(X),5):GOTO 1510
  163. 1496  IF D=1 AND S<>5 AND S<>7 AND (MID$(Z2$(X),2,2)="l'" OR MID$(Z2$(X),2,2)="i ") THEN LOCATE 5,20:PRINT USING U2$;MID$(Z2$(X),4):GOTO 1510
  164. 1500  IF D=1 AND S<>5 AND S<>7 THEN LOCATE 5,20:PRINT USING U2$;MID$(Z2$(X),2)
  165. 1510  IF D=1 AND T9<>1 AND S=7 AND (MID$(R4$(X1),2,3)="il " OR MID$(R4$(X1),2,3)="lo ") THEN LOCATE 5,20:PRINT USING U2$;MID$(R4$(X1),5):GOTO 1530
  166. 1514  IF D=1 AND T9<>1 AND S=7 AND (MID$(R4$(X1),2,3)="la " OR MID$(R4$(X1),2,3)="le ") THEN LOCATE 5,20:PRINT USING U2$;MID$(R4$(X1),5):GOTO 1530
  167. 1516  IF D=1 AND T9<>1 AND S=7 AND (MID$(R4$(X1),2,2)="l'" OR MID$(R4$(X1),2,2)="i ") THEN LOCATE 5,20:PRINT USING U2$;MID$(R4$(X1),4):GOTO 1530
  168. 1520  IF D=1 AND T9<>1 AND S=7 THEN LOCATE 5,20:PRINT USING U2$;MID$(R4$(X1),2)
  169. 1530  IF D=2 AND T9<>1 AND S=7 THEN LOCATE 5,20:PRINT USING U2$;R1$(X1)
  170. 1540  RETURN
  171. 1550  LOCATE 23,34:PRINT SPC(14):P3=0:P4=0:P5=0:P6=0
  172. 1560  FOR N=1 TO P
  173. 1570  IF Z1(N)=2 THEN P5=P5+1:R2$(P5)=Z2$(N):R1$(P5)=Z1$(N)
  174. 1580  IF Z2(N)=2 THEN P6=P6+1:R3$(P6)=Z1$(N):R4$(P6)=Z2$(N)
  175. 1590  NEXT:P3=P5:P4=P6:RETURN
  176. 1600  LOCATE 23,21:PRINT"There is no record of any wrong answers.":FOR N=1 TO 5999:NEXT:GOTO 130
  177. 1610  COLOR 0,7:LOCATE 12,33:PRINT" Inputting data ":COLOR 7,0:RETURN
  178. 1620  FOR I=1 TO 2:A(I)=INT(RND(1)*17)+1:NEXT:IF A(1)=A(2) THEN 1620 ELSE GOSUB 1610
  179. 1630  FOR I=1 TO 2:OPEN "I",1,"VOCAB"+MID$(STR$(A(I)),2)+".DAT"
  180. 1640  P=P+1:INPUT #1,Z1$(P),Z2$(P):GOSUB 2890
  181. 1650  IF EOF(1) THEN CLOSE:NEXT:RETURN ELSE LOCATE 14,39:PRINT P:GOTO 1640
  182. 1660  FOR I=1 TO 2:A(I)=INT(RND(1)*17)+1:NEXT:IF A(1)=A(2) OR A(1)=A(3) OR A(2)=A(3) THEN 1660 ELSE GOSUB 1610
  183. 1670  FOR I=1 TO 2:OPEN "I",1,"VOCAB"+MID$(STR$(A(I)),2)+".DAT"
  184. 1680  INPUT #1,X1$,X2$:LOCATE 14,39:PRINT P
  185. 1690  GOSUB 2890:IF LEFT$(X2$,1)="-" THEN P=P+1:Z1$(P)=X1$:Z2$(P)=X2$
  186. 1700  IF EOF(1) THEN CLOSE:NEXT:RETURN ELSE GOTO 1680
  187. 1710  FOR I=1 TO 6:A(I)=INT(RND(1)*17)+1:NEXT:GOSUB 2280:IF P=1 THEN 1710 ELSE GOSUB 1610
  188. 1720  FOR I=1 TO 6:OPEN "I",1,"VOCAB"+MID$(STR$(A(I)),2)+".DAT"
  189. 1730  INPUT #1,X1$,X2$:LOCATE 14,39:PRINT P
  190. 1740  GOSUB 2890:IF LEFT$(X2$,1)=X$ THEN P=P+1:Z1$(P)=X1$:Z2$(P)=X2$
  191. 1750  IF EOF(1) THEN CLOSE:NEXT:RETURN ELSE GOTO 1730
  192. 1760  FOR I=1 TO 2:A(I)=INT(RND(1)*5)+1:NEXT:IF A(1)=A(2) THEN 1760 ELSE GOSUB 1610
  193. 1770  FOR N=1 TO 2:OPEN "I",1,"PHRASE"+MID$(STR$(A(N)),2)+".DAT"
  194. 1780  P=P+1:INPUT #1,Z1$(P),Z2$(P):GOSUB 2890
  195. 1790  IF EOF(1) THEN CLOSE:NEXT:RETURN ELSE LOCATE 14,39:PRINT P:GOTO 1780
  196. 1800  IF (D=2 AND R1$(X1)="") OR (D=1 AND R4$(X1)="") THEN 620
  197. 1810  IF D=1 THEN A$(K)=R3$(X1) ELSE A$(K)=MID$(R2$(X1),2)
  198. 1820  GOTO 680
  199. 1830  LOCATE 5,70:COLOR 0,7:IF LEFT$(R2$(X1),1)="-" THEN PRINT" NOUN " ELSE IF LEFT$(R2$(X1),1)="*" THEN PRINT" VERB " ELSE PRINT" MISC "
  200. 1840  COLOR 7,0:RETURN
  201. 1850  COLOR 0,7:IF C$(C)=A$(K) THEN LOCATE 22,33:PRINT" CORRECT ANSWER " ELSE LOCATE 22,INT((48-LEN(A$(K)))/2):PRINT" INCORRECT ANSWER-CORRECT ANSWER IS: ";A$(K);" "
  202. 1860  COLOR 7,0:IF D=1 THEN GOSUB 1930 ELSE GOSUB 1950
  203. 1870  IF D=1 THEN R4$(X1)="":P4=P4-1 ELSE R1$(X1)="":P3=P3-1
  204. 1880  GOSUB 3140:IF P3>0 OR P4>0 THEN 1900
  205. 1890  IF P3=0 AND P4=0 THEN 2760
  206. 1900  IF D=2 AND P3=0 THEN 1100
  207. 1910  IF D=1 AND P4=0 THEN 1120
  208. 1920  GOTO 1140
  209. 1930  FOR B=1 TO P:IF Z2$(B)=R4$(X1) AND C$(C)=A$(K) THEN Z2(B)=4 ELSE IF Z2$(B)=R4$(X1) AND C$(C)<>A$(K) THEN Z2(B)=3:RETURN
  210. 1940  NEXT
  211. 1950  FOR B=1 TO P:IF Z1$(B)=R1$(X1) AND C$(C)=A$(K) THEN Z1(B)=4 ELSE IF Z1$(B)=R1$(X1) AND C$(C)<>A$(K) THEN Z1(B)=3:RETURN
  212. 1960  NEXT
  213. 1970  RETURN
  214. 1980  CLS:PR$="":IF S1=1 THEN PRINT STRING$(24,175);" ";:COLOR 0,7:PRINT" NOUN VOCABULARY DRILL RESULTS ";:COLOR 7,0:PRINT" ";STRING$(23,174)
  215. 1990  IF S1=2 THEN PRINT STRING$(24,175);" ";:COLOR 0,7:PRINT" VERB VOCABULARY DRILL RESULTS ";:COLOR 7,0:PRINT" ";STRING$(23,174)
  216. 2000  IF S1=3 THEN PRINT STRING$(17,175);" ";:COLOR 0,7:PRINT" MISCELLANEOUS WORD VOCABULARY DRILL RESULTS ";:COLOR 7,0:PRINT" ";STRING$(16,174)
  217. 2010  IF S1=4 THEN PRINT STRING$(15,175);" ";:COLOR 0,7:PRINT" RANDOM SELECTION WORD VOCABULARY DRILL RESULTS ";:COLOR 7,0:PRINT" ";STRING$(15,174)
  218. 2020  IF S1=5 THEN PRINT STRING$(22,175);" ";:COLOR 0,7:PRINT" PHRASE TRANSLATION DRILL RESULTS ";:COLOR 7,0:PRINT" ";STRING$(22,174)
  219. 2030  IF S1=6 THEN 2790
  220. 2040  PRINT STRING$(80,"-"):PRINT
  221. 2050  IF P8<>0 OR P9<>0 THEN GOSUB 2200
  222. 2060  IF P3<>0 OR P4<>0 THEN GOSUB 2240
  223. 2070  PRINT"Press one of the following keys:":PRINT
  224. 2080  IF P3>0 OR P4>0 THEN PRINT TAB(20)"<R>esume Retesting"
  225. 2090  IF P8>0 OR P9>0 THEN PRINT TAB(20)"<G>o Back To Original Option"
  226. 2100  PRINT TAB(20)"<D>isplay Test Results"
  227. 2110  PRINT TAB(20)"<P>rint Test Results"
  228. 2120  PRINT TAB(20)"<C>hoose New Option":GOSUB 3110
  229. 2130  X$=INKEY$:IF X$="" THEN 2130 ELSE IF ASC(X$)>90 THEN X$=CHR$(ASC(X$)-32)
  230. 2140  IF X$="D" THEN GOSUB 2300:GOTO 1980
  231. 2150  IF X$="P" THEN PR$="Y":ON ERROR GOTO 3170:LPRINT:ON ERROR GOTO 0:GOSUB 2300:GOTO 1980
  232. 2160  IF X$="R" AND (P3>0 OR P4>0) THEN S=7:CLS:GOTO 190
  233. 2170  IF X$="G" AND (P8>0 OR P9>0) THEN S=S1:GOTO 380
  234. 2180  IF X$="C" THEN 90
  235. 2190  GOTO 2130
  236. 2200  PRINT"The following are still left in your original option selection:"
  237. 2210  IF P9>0 THEN PRINT TAB(20)P9;S2$" selections
  238. 2220  IF P8>0 THEN PRINT TAB(20)P8;S1$" selections
  239. 2230  PRINT STRING$(80,"-"):RETURN
  240. 2240  PRINT"You still have the following remaining for retesting:
  241. 2250  IF P3>0 THEN PRINT TAB(20)P3;S2$" selections
  242. 2260  IF P4>0 THEN PRINT TAB(20)P4;S1$" selections
  243. 2270  PRINT STRING$(80,"-"):RETURN
  244. 2280  P=0:IF A(1)=A(2) OR A(1)=A(3) OR A(1)=A(4) OR A(1)=A(5) OR A(1)=A(6) OR A(2)=A(3) OR A(2)=A(4) OR A(2)=A(5) OR A(2)=A(6) OR A(3)=A(4) OR A(3)=A(5) OR A(3)=A(6) OR A(4)=A(5) OR A(4)=A(6) OR A(5)=A(6) THEN P=1
  245. 2290  RETURN
  246. 2300  IF P=0 THEN RETURN ELSE CLS:LOCATE 1,13:COLOR 0,7:PRINT" THE FOLLOWING WERE MISSED DURING REGULAR OPTION TESTING ":COLOR 7,0
  247. 2310  IF P1<>100 THEN 2320 ELSE LOCATE 15,16:COLOR 0,7:PRINT" Congratulations!! You received a perfect score. ";:GOSUB 2850:RETURN
  248. 2320  Q=0:Q9$=U2$:IF S1=5 THEN Q9$=U7$
  249. 2330  IF PR$<>"Y" THEN 2360 ELSE IF S1<5 THEN LPRINT TAB(28)"VOCABULARY DRILL RESULTS":LPRINT
  250. 2340  IF S1=5 THEN LPRINT TAB(24)"PHRASE TRANSLATION DRILL RESULTS":LPRINT
  251. 2350  LPRINT"The following were missed during regular option testing:":LPRINT
  252. 2360  FOR I=1 TO P:IF Z1(I)>1 THEN PRINT USING Q9$;Z1$(I);MID$(Z2$(I),2);:Q=Q+1:IF S1=5 THEN Q=Q+1
  253. 2370  IF PR$="Y" AND Z1(I)>1 THEN ZZ$=Z1$(I):GOSUB 2920:LPRINT USING Q9$;ZZ$;:ZZ$=MID$(Z2$(I),2):GOSUB 2920:LPRINT USING Q9$;ZZ$;
  254. 2380  IF Z2(I)>1 THEN PRINT USING Q9$;MID$(Z2$(I),2);Z1$(I);:Q=Q+1:IF S1=5 THEN Q=Q+1
  255. 2390  IF PR$="Y" AND Z2(I)>1 THEN ZZ$=MID$(Z2$(I),2):GOSUB 2920:LPRINT USING Q9$;ZZ$;:ZZ$=Z1$(I):LPRINT USING Q9$;ZZ$;
  256. 2400  IF Q=44 THEN GOSUB 2850:CLS:Q=0:LOCATE 1,13:COLOR 0,7:PRINT" THE FOLLOWING WERE MISSED DURING REGULAR OPTION TESTING ":COLOR 7,0
  257. 2402  IF Q=44 THEN STOP
  258. 2410  NEXT:LOCATE 24,1:PRINT"Amount quizzed ="T1"  Amount correct ="T2"  Final percentage correct ="STR$(P1)"%";:IF INT(Q/2)<>Q/2 AND PR$="Y" THEN LPRINT
  259. 2420  IF PR$="Y" THEN LPRINT:LPRINT"Amount quizzed ="T1"  Amount correct ="T2"  Final percentage correct ="STR$(P1)"%"
  260. 2430  GOSUB 2850:CLS:IF (P5=0 AND P6=0) OR (P3=P5 AND P4=P6) THEN RETURN
  261. 2440  LOCATE 1,19:COLOR 0,7:PRINT" THE FOLLOWING WERE MISSED DURING RETESTING ":COLOR 7,0:Q=0
  262. 2450  IF PR$="Y" THEN LPRINT:LPRINT:LPRINT"The following were missed during restesting:":LPRINT
  263. 2460  FOR I=1 TO P:IF Z1(I)=3 THEN PRINT USING Q9$;Z1$(I);MID$(Z2$(I),2);:Q=Q+1:IF S1=5 THEN Q=Q+1
  264. 2470  IF PR$="Y" AND Z1(I)=3 THEN ZZ$=Z1$(I):GOSUB 2920:LPRINT USING Q9$;ZZ$;:ZZ$=MID$(Z2$(I),2):GOSUB 2920:LPRINT USING Q9$;ZZ$;
  265. 2480  IF Z2(I)=3 THEN PRINT USING Q9$;MID$(Z2$(I),2);Z1$(I);:Q=Q+1:IF S1=5 THEN Q=Q+1
  266. 2490  IF PR$="Y" AND Z2(I)=3 THEN ZZ$=MID$(Z2$(I),2):GOSUB 2920:LPRINT USING Q9$;ZZ$;:ZZ$=Z1$(I):GOSUB 2920:LPRINT USING Q9$;ZZ$;
  267. 2500  IF Q=44 THEN GOSUB 2850:CLS:Q=0:LOCATE 1,19:COLOR 0,7:PRINT" THE FOLLOWING WERE MISSED DURING RETESTING ":COLOR 7,0
  268. 2510  NEXT:IF PR$="Y" THEN LPRINT
  269. 2520  IF Q=0 THEN LOCATE 15,2:COLOR 0,7:PRINT" Congratulations!! You correctly answered all selections when being retested. ":COLOR 7,0
  270. 2530  GOSUB 2850:RETURN
  271. 2540  FOR I=1 TO 6:A(I)=INT(RND(1)*15)+1:NEXT:GOSUB 2280:IF P=1 THEN 2540 ELSE GOSUB 1610
  272. 2550  FOR I=1 TO 5:OPEN "I",1,"VERB"+MID$(STR$(A(I)),2)+".DAT"
  273. 2560  FOR K=1 TO 4:INPUT #1,X$:P=P+1:Z1$(P)=X$:X=INT(RND(1)*6)+1:Z1(INT(P/5)+1)=X
  274. 2570  FOR B=1 TO 4:FOR Z=1 TO 6:INPUT #1,X$:GOSUB 2890
  275. 2580  IF Z=X THEN P=P+1:Z1$(P)=X$:LOCATE 14,39:PRINT P
  276. 2590  NEXT Z:NEXT B:NEXT K:CLOSE:NEXT I:RETURN
  277. 2600  M=INT(RND(1)*P9)+1:IF Z1(M)=0 THEN 2600 ELSE P=((M-1)*5)+1:X=INT(RND(1)*4)+1:X1=X:X=P+X
  278. 2610  LOCATE 2,3:PRINT"*":FOR DE=1 TO 150:NEXT:LOCATE 2,3:PRINT" "
  279. 2620  BR$=INKEY$:IF BR$="" THEN 2630 ELSE IF BR$="x" OR BR$="X" THEN 90
  280. 2630  FOR N=1 TO 4:Z=INT(RND(1)*4)+1:A$(N)=Z1$(P+Z):NEXT
  281. 2640  IF A$(1)=A$(2) OR A$(1)=A$(3) OR A$(1)=A$(4) OR A$(2)=A$(3) OR A$(2)=A$(4) OR A$(3)=A$(4) THEN 2600
  282. 2650  FLAG=0:FOR K=1 TO 4
  283. 2660  IF Z1$(X)=A$(K) THEN FLAG=1:KK=K:K=4
  284. 2670  NEXT:IF FLAG=0 THEN 2610
  285. 2680  K=KK:LOCATE 5,15:PRINT USING U2$;Z1$(P)
  286. 2690  RESTORE 2900:FOR N=1 TO 6:READ Z$
  287. 2700  IF N=Z1(M) THEN LOCATE 5,40:PRINT USING U2$;Z$:BR$=Z$
  288. 2710  NEXT
  289. 2720  FOR N=1 TO 4:READ Z$
  290. 2730  IF N=X1 THEN LOCATE 5,60:PRINT USING U2$;Z$:X$=Z$
  291. 2740  NEXT:GOTO 780
  292. 2750  IF S=6 THEN LOCATE 24,9:PRINT"You have been quizzed on all available verb conjugation forms.";:LOCATE 25,8:PRINT"Press 'M' to load more selections or any other key for the menu.";
  293. 2760  IF S<>6 THEN LOCATE 24,3:PRINT"You have been quizzed with all available combinations. Hit any key for menu.";
  294. 2770  Z$=INKEY$:IF Z$="" THEN 2770
  295. 2780  IF S=6 AND (Z$="m" OR Z$="M") THEN CLS:P=0:GOTO 230 ELSE 90
  296. 2790  PRINT STRING$(23,175);" ";:COLOR 0,7:PRINT" VERB CONJUGATION DRILL RESULTS ";:COLOR 7,0:PRINT" ";STRING$(23,174):LOCATE 4,18:PRINT"The following conjugation forms were missed:"
  297. 2800  RESTORE 2910:FOR I=1 TO 6:READ Z$:NEXT:FOR I=0 TO 3:READ Z$:LOCATE 7,17*I+9:COLOR 0,7:PRINT " ";Z$;" ":COLOR 7,0:NEXT
  298. 2810  FOR K=0 TO 3:RESTORE 2910:FOR I=1 TO 6:READ Z$:LOCATE 8+I,17*K+10:PRINT Z$:LOCATE 8+I,17*K+15:PRINT E(I,K+1);:IF E(I,K+1)>3 THEN COLOR 23,0:PRINT"*":COLOR 7,0
  299. 2820  NEXT I,K:LOCATE 20,1:PRINT"Total quizzed =";T1;"   Total correct =";T2;"   Correct answer percentage =";STR$(P1);"%"
  300. 2830  LOCATE 25,23:COLOR 0,7:PRINT" Hit any key to return to the menu ";:COLOR 7,0:GOSUB 3110
  301. 2840  IF INKEY$="" THEN 2840 ELSE 90
  302. 2850  LOCATE 25,28:COLOR 0,7:PRINT" Hit any key to continue ";:COLOR 7,0:GOSUB 3110
  303. 2860  IF INKEY$="" THEN 2860 ELSE RETURN
  304. 2870  COLOR 0,7:LOCATE 24,23:PRINT" Hit any key to return to the menu ";:COLOR 7,0:GOSUB 3110
  305. 2880  IF INKEY$="" THEN 2880 ELSE 90
  306. 2890  BR$=INKEY$:IF BR$="" THEN RETURN ELSE IF BR$="x" OR BR$="X" THEN CLOSE:GOTO 90 ELSE RETURN
  307. 2900  DATA IO,TU,LUI,NOI,VOI,ESSI,PRESENT,IMPERFECT,PAST ABS.,FUTURE
  308. 2910  DATA Io,Tu,Lui,Noi,Voi,Essi,Present,Imperfect,Past Abs.,Future
  309. 2920  FOR II=1 TO LEN(ZZ$):IF MID$(ZZ$,II,1)=CHR$(133) THEN MID$(ZZ$,II,1)="a"
  310. 2930  IF MID$(ZZ$,II,1)=CHR$(138) OR MID$(ZZ$,II,1)=CHR$(130) THEN MID$(ZZ$,II,1)="e"
  311. 2940  IF MID$(ZZ$,II,1)=CHR$(163) OR MID$(ZZ$,II,1)=CHR$(151) THEN MID$(ZZ$,II,1)="u"
  312. 2942  IF MID$(ZZ$,II,1)=CHR$(141) OR MID$(ZZ$,II,1)=CHR$(161) THEN MID$(ZZ$,II,1)="i"
  313. 2950  IF MID$(ZZ$,II,1)=CHR$(149) OR MID$(ZZ$,II,1)=CHR$(162) THEN MID$(ZZ$,II,1)="o"
  314. 2970  NEXT:RETURN
  315. 2980  IF D=1 THEN 3000 ELSE FOR XX=1 TO 14:KEY(XX) ON:NEXT
  316. 2990  ON KEY(1) GOSUB 3060:ON KEY(2) GOSUB 3070:ON KEY(3) GOSUB 3080:ON KEY(4) GOSUB 3090:ON KEY(5) GOSUB 3092:ON KEY(11) GOSUB 3100:ON KEY(14) GOSUB 3100
  317. 2992  ON KEY(6) GOSUB 3093:ON KEY(7) GOSUB 3094:ON KEY(8) GOSUB 3095:ON KEY(9) GOSUB 3096:ON KEY(10) GOSUB 3100:ON KEY(12) GOSUB 3100:ON KEY(13) GOSUB 3100
  318. 3000  LOCATE 19,10:YY=19:XX=40:PRINT"Enter your answer (X=Escape): _":ANSWER$=""
  319. 3010  A$=INKEY$:IF A$="" THEN 3010
  320. 3020  IF ASC(A$)=13 THEN FOR II=1 TO 14:ON KEY(II) GOSUB 3100:KEY(II) OFF:NEXT:KEY 1,"":RETURN
  321. 3030  IF ASC(A$)=8 THEN IF LEN(ANSWER$)=0 THEN 3010 ELSE LOCATE YY,XX:PRINT" ":XX=XX-1:LOCATE YY,XX:PRINT"_":ANSWER$=LEFT$(ANSWER$,LEN(ANSWER$)-1):GOTO 3010
  322. 3040  LOCATE YY,XX:PRINT A$;:YY=CSRLIN:XX=POS(0):PRINT"_";:ANSWER$=ANSWER$+A$
  323. 3050  GOTO 3010
  324. 3060  LOCATE YY,XX:PRINT CHR$(133);:YY=CSRLIN:XX=POS(0):PRINT"_";:ANSWER$=ANSWER$+CHR$(133):RETURN
  325. 3070  LOCATE YY,XX:PRINT CHR$(138);:YY=CSRLIN:XX=POS(0):PRINT"_";:ANSWER$=ANSWER$+CHR$(138):RETURN
  326. 3080  LOCATE YY,XX:PRINT CHR$(130);:YY=CSRLIN:XX=POS(0):PRINT"_";:ANSWER$=ANSWER$+CHR$(130):RETURN
  327. 3090  LOCATE YY,XX:PRINT CHR$(141);:YY=CSRLIN:XX=POS(0):PRINT"_";:ANSWER$=ANSWER$+CHR$(141):RETURN
  328. 3092  LOCATE YY,XX:PRINT CHR$(161);:YY=CSRLIN:XX=POS(0):PRINT"_";:ANSWER$=ANSWER$+CHR$(161):RETURN
  329. 3093  LOCATE YY,XX:PRINT CHR$(149);:YY=CSRLIN:XX=POS(0):PRINT"_";:ANSWER$=ANSWER$+CHR$(149):RETURN
  330. 3094  LOCATE YY,XX:PRINT CHR$(162);:YY=CSRLIN:XX=POS(0):PRINT"_";:ANSWER$=ANSWER$+CHR$(162):RETURN
  331. 3095  LOCATE YY,XX:PRINT CHR$(151);:YY=CSRLIN:XX=POS(0):PRINT"_";:ANSWER$=ANSWER$+CHR$(151):RETURN
  332. 3096  LOCATE YY,XX:PRINT CHR$(163);:YY=CSRLIN:XX=POS(0):PRINT"_";:ANSWER$=ANSWER$+CHR$(163):RETURN
  333. 3097  LOCATE YY,XX:PRINT CHR$(150);:YY=CSRLIN:XX=POS(0):PRINT"_";:ANSWER$=ANSWER$+CHR$(150):RETURN
  334. 3098  LOCATE YY,XX:PRINT CHR$(139);:YY=CSRLIN:XX=POS(0):PRINT"_";:ANSWER$=ANSWER$+CHR$(139):RETURN
  335. 3099  LOCATE YY,XX:PRINT CHR$(135);:YY=CSRLIN:XX=POS(0):PRINT"_";:ANSWER$=ANSWER$+CHR$(135):RETURN
  336. 3100  LOCATE YY,XX:PRINT"";:YY=CSRLIN:XX=POS(0):PRINT"_";:RETURN
  337. 3110  XXX$=INKEY$:IF XXX$<>"" THEN 3110 ELSE RETURN
  338. 3120  RESUME 3130
  339. 3130  LOCATE 23,26:COLOR 23:PRINT L$:COLOR 7:FOR DE=1 TO 5999:NEXT:ON ERROR GOTO 0:GOTO 130
  340. 3140  LOCATE 18,1:IF (S<>6 AND D=1 AND S<>7) OR S=6 THEN XX=P8 ELSE IF S<>6 AND D=2 AND S<>7 THEN XX=P9 ELSE IF S=7 AND D=1 THEN XX=P4 ELSE IF S=7 AND D=2 THEN XX=P3
  341. 3150  IF XX=1 THEN PRINT" 1 selection remains" ELSE PRINT XX"selections remain "
  342. 3160  RETURN
  343. 3170  RESUME 3180
  344. 3180  LOCATE 25,26:COLOR 23:PRINT L$;:COLOR 7:FOR DE=1 TO 5999:NEXT:LOCATE 25,26:PRINT SPC(50);:ON ERROR GOTO 0:PR$="":GOTO 2130
  345.